package cn.tedu.csmall.passport.service;

import cn.tedu.csmall.passport.pojo.param.AdminAddNewParam;
import cn.tedu.csmall.passport.pojo.param.AdminLoginInfoParam;
import cn.tedu.csmall.passport.pojo.param.AdminUpdateInfoParam;
import cn.tedu.csmall.passport.pojo.vo.AdminListItemVO;
import cn.tedu.csmall.passport.pojo.vo.AdminStandardVO;
import com.example.csmall.commons.pojo.vo.PageData;
import org.springframework.transaction.annotation.Transactional;

@Transactional
public interface IAdminService {
    // 管理员登录
    String login(AdminLoginInfoParam adminLoginInfoParam);

    // 添加管理员
    void addNew(AdminAddNewParam adminAddNewParam);

    // 删除管理员
    void delete(Long id);

    // 修改管理员信息
    void updateInfoById(Long id, AdminUpdateInfoParam adminUpdateInfoParam);

    // 根据ID查询管理员详情
    AdminStandardVO getStandardById(Long id);

    // 管理员列表
    PageData<AdminListItemVO> list(Integer pageNum);
    PageData<AdminListItemVO> list(Integer pageNum, Integer pageSize);

}
